package com.sugon.dao;

import com.sugon.entity.DevAmPlanEntity;
import com.sugon.entity.DevAmRulesEntity;
import com.sugon.entity.DevPlanRuleAmEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 设备维护计划与规程关联配置表Dao
 *
 * @author sugon
 * @date 2020-05-19 09:42:50
 */
public interface DevPlanRuleAmDao extends BaseDao<DevPlanRuleAmEntity> {

    /**
     * 查询某规程所关联的正在执行中的设备维护计划列表
     *
     * @param ruleId 维护规程ID
     * @return
     */
    List<DevAmPlanEntity> findMatched(@Param("ruleId") String ruleId);

    /**
     * 获取设备维护计划和维护规程的关联记录
     *
     * @param planId 维护计划ID
     * @return
     */
    List<DevPlanRuleAmEntity> getByPlanId(@Param("planId") String planId);

    List<DevAmRulesEntity> queryRelatedRuleList(Map<String, Object> map);

    /**
     * 条件查询总记录数
     *
     * @return
     */
    int queryRelatedRuleTotal(Map<String, Object> map);

    /**
     * 删除设备维护计划-维护规程
     *
     * @param planId 维护计划ID
     * @param ruleId 维护规程ID
     * @return
     */
    int deletePlanRule(@Param("planId") String planId, @Param("ruleId") String ruleId);

}
